1. Field of the Invention
The invention relates to firmware extensions, and in particular, to a method for adding user customized functionalities into a baseline firmware image without compromising baseline firmware source codes.
2. Description of the Related Art
Firmware extension is generally required in a manufacture line of a product, especially between upstream suppliers and downstream vendors. An upstream supplier usually provides hardware bundled with a baseline firmware image, and when various additional applications are required to deploy on a single embedded system, a baseline firmware image can only provide basic functions that are incapable of performing the variable functionalities. Thus, the downstream vendor may need to further modify the baseline firmware image to provide additional features before selling the product. Conventionally, source codes are required to modify functionalities of the baseline firmware image, and release of the source codes is usually very undesirable for the upstream suppliers because confidential information involved with the hardware design may be compromised.
FIG. 1 is a flowchart of conventional firmware modification. In step 101, source codes of the baseline firmware image are released from the upstream supplier, probably including header files, libraries and object files. In step 103, the downstream vendor modifies the source code to implement extended functionalities for the hardware. In step 105, a modified firmware image is compiled from the modified source codes, whereby the original firmware image is replaced. Since the source codes, the libraries and object files contain confidential information undesirable to be compromised, there is a need for an advanced firmware extension method.